The development of networking, including the Internet, has led to a nearly insatiable desire for instant access to large amounts of data on the part of computer users. Among the most demanding forms of data is video data, both in terms of raw size and complexity. As a result, numerous forms of video encoding have been developed to attempt to compress video data into a form which gives an acceptable display while at the same time reducing the datastream to a size which is operable on the intended networks.
This desire for video compression led to the widely accepted MPEG-2 standard, which is the standard underlying DVD's, ATSC digital terrestrial broadcast, and many other forms of digital video. In greatly simplified terms, MPEG-2 compression analyzes a sequence of video frames (referred to as a “GOP” or “Group of Pictures”) and identifies similarities among those frames, which avoids the need to send the repetitive data for each frame. A “GOP sequence” then provides a guide for decoding the compressed MPEG-2 data so that it can be displayed. However, MPEG-2 does not offer adequate efficiency for high volumes of video data, especially high resolution video such as HDTV.
These shortcomings have led to a newly developed international standard, known as ITU-T Rec. H.264 and ISO/IEC MPEG-4 part 10. This standard represents a significant improvement over MPEG-2. The H.264 standard offers greatly improved compression efficiency, typically on the order of two to three times the efficiency of MPEG-2. But this efficiency comes at the price of processing complexity. The complexity of a typical H.264 encoder is 10 to 20 times the processing capacity of an MPEG-2 encoder.
H.264 offers the most compelling advantage for high definition television (HDTV) applications. The bandwidth requirements of HDTV are six times that of standard definition television (SDTV), meaning that H.264 offers greater impact to bandwidth requirements for HDTV channels. However, an HDTV encoder requires approximately six times the processing capacity of an SDTV encoder.
Combining the processing requirements of H.264 and those of HDTV, the processing capacity of an H.264 HDTV encoder is required to be on the order of 60 to 120 times that of an MPEG-2 SDTV encoder. Due to the complexity of H.264 it is exceedingly difficult to process video at real-time rates, especially at high resolutions.
Although array encoders have been used for MPEG-2 applications, this technology has not been extended to the emerging, more complex H.264 standard. Likewise, a stat mux with feedforward has been used in MPEG-2 video encoding systems, but this approach has not been extended to the more complex H.264 standard.